package com.budwk.app.miniapp.models;

import cn.hutool.core.util.IdUtil;
import com.budwk.starter.common.openapi.annotation.ApiModelProperty;
import com.budwk.starter.database.model.BaseModel;
import lombok.Data;
import org.nutz.dao.entity.annotation.*;

import java.io.Serializable;

/**
 * 事件提醒对象 wx_event_schedule
 *
 * @author dfxy
 * @date 2023-04-11
 */
@Data
//@EqualsAndHashCode(callSuper = true)
@Table("wx_event_schedule")
public class WxEventSchedule extends BaseModel implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * $column.columnComment
     */
    @Name
    @Column
    @Comment("id")
    @ApiModelProperty(description = "id")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    @Prev(els=@EL("$me.nextId()"))
    private String id;

    /**
     * 事件id
     */
    @Column("event_id")
    @Comment("事件id")
    @ApiModelProperty(description = "事件id")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String eventId;

    /**
     * 状态
     */
    @Column("event_type")
    @Comment("状态")
    @ApiModelProperty(description = "状态")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String eventType;

    /**
     * 时间
     */
    @Column("event_time")
    @Comment("时间")
    @ApiModelProperty(description = "时间")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String eventTime;

    /**
     * 内容
     */
    @Column("event_content")
    @Comment("内容")
    @ApiModelProperty(description = "内容")
    @ColDefine(type = ColType.VARCHAR, width = 800)
    private String eventContent;

    /**
     * 内容json
     */
    @Column("event_content_json")
    @Comment("内容json")
    @ApiModelProperty(description = "内容json")
    @ColDefine(type = ColType.VARCHAR)
    private String eventContentJson;

    /**
     * 备注
     */
    @Column("event_remark")
    @Comment("备注")
    @ApiModelProperty(description = "备注")
    @ColDefine(type = ColType.VARCHAR, width = 500)
    private String eventRemark;

    /**
     * 状态
     */
    @Column("event_status")
    @Comment("状态")
    @ApiModelProperty(description = "状态")
    @ColDefine(type = ColType.VARCHAR, width = 255)
    private String eventStatus;


    private String volunteerWhetherHelp;



    public String nextId() {
        return IdUtil.getSnowflake(3, 3).nextIdStr();
    }
}
